import type { Plugin } from 'vite';

export interface ModuleStats {
  total: number;
  processed: number;
  pending: Set<string>;
}

export interface ProgressUpdateData {
  total: number;
  processed: number;
  current: string | null;
}

export interface ProgressTrackingPluginOptions {
  /** 进度条颜色 */
  color?: string;
  /** 进度条高度 (px) */
  height?: number;
  /** 是否显示状态文本 */
  showStatus?: boolean;
}

export type ProgressTrackingPlugin = (options?: ProgressTrackingPluginOptions) => Plugin;
